There are numerous remote desktop systems that enable a user of a client machine to interact with an application running on a server machine. However, these remote desktop applications generally require the installation of agents on the client machine. The agents typically communicate with the server machine using proprietary communication protocols to receive image data for rendering on a local display and for sending mouse commands and keyboard commands to the server machine.